home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 1 / ETO Development Tools 1.iso / Essentials / MacApp Documentation / MacApp AppleLink Messages / MacApp.Tech$ Oct 89 / Z0139-Re Next IB vs ViewE-Oct89 < prev    next >
Encoding:
Text File  |  1989-10-20  |  2.6 KB  |  53 lines  |  [TEXT/GEOL]

  1. Item    1826427                         19-Oct-89        20:24
  2.  
  3. From:   BURBECK.S                       Burbeck, Steve
  4.  
  5. To:     D2078                           AS & M, Alan Dail,PRT
  6.  
  7. cc:     MACAPP.TECH$                    MACAPP Tech
  8.  
  9. Sub:    Re Next IB vs ViewEdit
  10.  
  11. Alan,
  12.  
  13. ViewEdit is both more and less powerful than InterfaceBuilder (IB).  In
  14. ViewEdit's favor, it manipulates resources so you can add to and modify the
  15. user interface without rebuilding your program.  IB, like Prototyper in the
  16. Macintosh world, puts out source code.  This approach is one-directional: once
  17. you export the code and edit it to add your behavior, there is little you can
  18. do to modify it with IB.  The resource description approach is far more
  19. flexible.  And flexibility is very important because commercial user interfaces
  20. typically take many iterations to get right (and users may continue to suggest
  21. changes through the alpha and beta testing phases).  However ViewEdit is less
  22. powerful than IB in one important respect: it only describes the appearance of
  23. the user interface.  You must write your own code to connect its active
  24. components (e.g., buttons) to your program's behavior.  IB lets you describe
  25. both the appearance of the interface and connections to behavior.
  26.  
  27. As you correctly point out, a fundamental stumbling block to describing
  28. behavior in ViewEdit is that Object Pascal is missing some basic power that is
  29. available in Objective-C.  It needs the ability at runtime to send a message to
  30. an object where the message name is specified by data (e.g., a string in from
  31. 'view' resource or -- consider the possibilities -- a string entered by the
  32. user!!).
  33.  
  34. As Geoff Pascoe explained, this is not a language feature, it is a runtime
  35. metadata issue.  In effect you need information at runtime that, at present,
  36. the MPW linker has thrown away.  You and Geoff note that Objective-C has (some
  37. of) this, whereas Object Pascal does not.  We have been looking into this issue
  38. with the MPW engineers.  No promises, but there is reason for optimism!
  39.  
  40. I believe that the architectural decision to base ViewEdit on the Macintosh
  41. resource mechanism will, in the long run, give MacApp a fundamental advantage
  42. over IB.  The IB scheme provides a single purpose mechanism for helping the
  43. programmer to build the original interface.  It is of little use for subsequent
  44. maintainers of the program or for internationalizing or customizing the
  45. application after it is built.  The MacApp approach, while lacking an important
  46. feature today, is more extensible and generalizable.  We intend to extend and
  47. generalize it.
  48.  
  49. Steve Burbeck,
  50. MacApp Product Manager
  51.  
  52.  
  53.